1. Field of the Invention
The present invention relates to a game network construction method and a game network system, and in particular, to a game network construction method and a game network system for a game which is executed via a communication network.
2. Description of the Background Art
Conventionally, as a game system performed via a communication network, there exists a technique disclosed in a Non-Patent Document 1 (Jung WunChul, “Online Game Programming”, SOFTBANK Publishing Corp., first edition, Mar. 3, 2005, Pages 218-222). The Non-Patent Document 1 describes a method of constructing a peer-to-peer network. In a peer-to-peer network game system, a game basically advances while communication is performed between user terminals. Thus, the peer-to-peer network game system does not need a high-performance game server unlike a server/client type network game system. In addition, the peer-to-peer network game system can perform data transfer between the user terminals without passing via a game server, and hence is suitable for a network game, such as a racing game, which needs real-time processing.
Generally, there are two main types of the peer-to-peer networks. One of them is a star network in which a user terminal serves as a host and in which other user terminals (client terminals) transmit and receive data to and from each other via the host terminal (see FIG. 22). The other type is a mesh network in which all of user terminals can transmit and receive data to and from each other without passing via a specific host terminal (see FIG. 23).
With reference to FIGS. 24 and 25, a method of constructing a conventional mesh peer-to-peer network will be described briefly. FIG. 24 is a flow chart showing processing executed by a host terminal, and FIG. 25 is a flow chart showing processing executed by a client terminal.
As shown in FIG. 24, a host terminal creates a game session at a step S900, and resets a player list at a step S901. The player list is a list including terminal information (address information, and the like) of all user terminals which belong to the same network. At a step S902, the host terminal determines whether or not a game is to be started. When the game is to be started (e.g. when a constant number of user terminals are connected to the network), the host terminal proceeds to a step S907. When the game is not to be started, the host terminal proceeds to a step S903. At the step S903, the host terminal determines whether or not the host terminal has received a connection request signal from another user terminal (a user terminal which is to be newly added to the network). When the host terminal has received the connection request signal, the host terminal proceeds to a step S904. When the host terminal has not received the connection request signal yet, the host terminal returns to the step S902. At the step S904, the host terminal adds to the player list terminal information of the user terminal which is a source of the connection request signal. At a step S905, the host terminal transmits the updated player list to all of the client terminals which belong to the same network. At a step S906, the host terminal connects to the user terminal which is the source of the connection request signal, and then returns to the step S902. At the step S907, the host terminal transmits a game start signal to all of the client terminals which belong to the same network, and then a network game is started.
As shown in FIG. 25, the client terminal selects a game session from a plurality of game sessions, which are created by a plurality of host terminals, respectively, at a step S910, and receives a player list from the host terminal of the selected game session at a step S911. At a step S912, based on the received player list, the line terminal connects to a user terminal (the host terminal or a client terminal), terminal information of which is included in the player list. At a step S913, the client terminal determines whether or not the client terminal has received the game start signal from the host terminal. When the client terminal has received the game start signal, the network game is started. When the client terminal has not received the game start signal yet, the client terminal proceeds to a step S914. At the step S914, the client terminal determines whether or not the client terminal has received the player list from the host terminal. When the client terminal has received the player list, the client terminal proceeds to the step S912. When the client terminal has not received the player list yet, the client terminal proceeds to the step S913.
When the mesh peer-to-peer network is constructed as described above and the network game is started, each user terminal executes game processing while transmitting and receiving data to and from the other user terminals directly (i.e. without passing via the host terminal).
Meanwhile, the star peer-to-peer network has an advantage that a time after a start of constructing a network until a completion thereof (i.e. until transmission and reception of data become possible between user terminals) is short. However, the star peer-to-peer network has a problem that communication delay is large since transmission and reception of data have to be performed via the host terminal, and also has a problem that communication performance between the client terminals depends on performance of the host terminal and network line condition.
On the other hand, in the mesh peer-to-peer network, transmission and reception of data between the client terminals are performed without passing via the host terminal, and thus the above problems do not arise. However, the mesh peer-to-peer network has a problem that it takes time until all of the user terminals connect to each other. Especially, for a network game in which a number of concurrently connected terminals is large, the mesh peer-to-peer network has a problem that users are made to wait for the game to start for a long time. Further, since connections between all of the user terminals have to be successful, the mesh peer-to-peer network has a problem that there is a high possibility that network construction fails compared to the star peer-to-peer network.